26 research outputs found

    The Unexpected Efficiency of Bin Packing Algorithms for Dynamic Storage Allocation in the Wild: An Intellectual Abstract

    Full text link
    Recent work has shown that viewing allocators as black-box 2DBP solvers bears meaning. For instance, there exists a 2DBP-based fragmentation metric which often correlates monotonically with maximum resident set size (RSS). Given the field's indeterminacy with respect to fragmentation definitions, as well as the immense value of physical memory savings, we are motivated to set allocator-generated placements against their 2DBP-devised, makespan-optimizing counterparts. Of course, allocators must operate online while 2DBP algorithms work on complete request traces; but since both sides optimize criteria related to minimizing memory wastage, the idea of studying their relationship preserves its intellectual--and practical--interest. Unfortunately no implementations of 2DBP algorithms for DSA are available. This paper presents a first, though partial, implementation of the state-of-the-art. We validate its functionality by comparing its outputs' makespan to the theoretical upper bound provided by the original authors. Along the way, we identify and document key details to assist analogous future efforts. Our experiments comprise 4 modern allocators and 8 real application workloads. We make several notable observations on our empirical evidence: in terms of makespan, allocators outperform Robson's worst-case lower bound 93.75%93.75\% of the time. In 87.5%87.5\% of cases, GNU's \texttt{malloc} implementation demonstrates equivalent or superior performance to the 2DBP state-of-the-art, despite the second operating offline. Most surprisingly, the 2DBP algorithm proves competent in terms of fragmentation, producing up to 2.462.46x better solutions. Future research can leverage such insights towards memory-targeting optimizations.Comment: 13 pages, 10 figures, 3 tables. To appear in ISMM '2

    Resource Aware GPU Scheduling in Kubernetes Infrastructure

    Get PDF
    Nowadays, there is an ever-increasing number of artificial intelligence inference workloads pushed and executed on the cloud. To effectively serve and manage the computational demands, data center operators have provisioned their infrastructures with accelerators. Specifically for GPUs, support for efficient management lacks, as state-of-the-art schedulers and orchestrators, threat GPUs only as typical compute resources ignoring their unique characteristics and application properties. This phenomenon combined with the GPU over-provisioning problem leads to severe resource under-utilization. Even though prior work has addressed this problem by colocating applications into a single accelerator device, its resource agnostic nature does not manage to face the resource under-utilization and quality of service violations especially for latency critical applications. In this paper, we design a resource aware GPU scheduling framework, able to efficiently colocate applications on the same GPU accelerator card. We integrate our solution with Kubernetes, one of the most widely used cloud orchestration frameworks. We show that our scheduler can achieve 58.8% lower end-to-end job execution time 99%-ile, while delivering 52.5% higher GPU memory usage, 105.9% higher GPU utilization percentage on average and 44.4% lower energy consumption on average, compared to the state-of-the-art schedulers, for a variety of ML representative workloads

    Design space exploration and synthesis methodologies for coarse-grained reconfigurable coprocessor architectures

    No full text
    Technological advances in micro-electronics, enabled the development of complex embedded computing devices, i.e. mobile phones, digital cameras, etc., which dominate the modern everyday life. Such type of systems usually execute a large but specific set of applications, which combine highly dynamic behavior together with high demands in computing power. The designers have to deal with the increased system complexity, in order to provide design solutions that satisfy a set of stringent functional and financial constraints. Today, it is broadly accepted that without the use of automated tools to optimize the hardware and software system's coefficients, designers are led to the adoption of sub-optimal design solutions. This thesis addresses the above problem by developing a set of methodologies for efficient design space exploration and architectural synthesis for digital signal processing coprocessors. Specifically, the proposed techniques target to (i) the development of customized software solutions for dynamic memory management of multi-threaded applications and (ii) the design of efficient customized and reconfigurable coprocessor architectures. Regarding to the automated design space exploration methodologies, we model and analyze the basic building blocks of multi-threaded dynamic memory management for multi-core platforms with shared memory. We propose new algorithms for exploring and traversing the defined parameter space based on constrained orthogonal design space partitioning, which enables multi-objective optimization and automated code generation of application specific dynamic memory management. In addition, we propose a new approach for defining an extended design space for hardware coprocessor synthesis, which takes into account the combined impact of behavioral-algorithmic and architectural level parameters. New exploration algorithms are developed to enable fast and efficient exploration that converges to more globally optimal design solutions. Regarding to the architectural synthesis of reconfigurable coprocessors, we introduce the Flexibility Inlining technique for designing coarse-grained reconfigurable architectures at the circuit level. The proposed technique exploits the mirror symmetry found in ASIC implementations of arithmetic circuits and through appropriate RTL transformations achieves the design of a new reconfigurable micro-architectural template that exploits in a combined manner the architectural optimizations of horizontal parallelism, vertical parallel and operation chaining. In addition, we present a second micro-architectural template that use advanced arithmetic optimization techniques for designing flexible coprocessor datapaths. Each of the aforementioned reconfigurable architectures is complemented with new high level synthesis algorithms in order to enable automated mapping of applications onto the introduced datapaths. We study the effectiveness of the proposed methodologies through multiple and extensive experimental evaluations of the proposed solutions in comparison with state-of-the-art design solutions. In any case, it seems that the adoption of the proposed methodologies leads to a significant shift of the design solutions towards more efficient implementations.Οι τεχνολογικές εξελίξεις στον τομέα της μικρο-ηλεκτρονικής επιτρέπουν σήμερα την ανάπτυξη πολύπλοκων ενσωματωμένων υπολογιστικών συσκευών π.χ. κινητά τηλέφωνα, ψηφιακές κάμερες, που κυριαρχούν τη σύγχρονη καθημερινότητα. Οι σχεδιαστές καλούνται να αντιμετωπίσουν την αυξημένη πολυπλοκότητα παρέχοντας σχεδιαστικές λύσεις που ικανοποιούν ένα αντικρουόμενο σύνολο αυστηρών λειτουργικών και οικονομικών περιορισμών. Σήμερα είναι γενικά αποδεκτό ότι χωρίς τη χρήση αυτοματοποιημένων εργαλείων που βελτιστοποιούν αισθητά τις συνιστώσες υλικού και λογισμικού του συστήματος οι σχεδιαστές οδηγούνται στην υιοθέτηση υπο-βέλτιστων σχεδιαστικών λύσεων. Η παρούσα διατριβή στοχεύει στην αντιμετώπιση του παραπάνω προβλήματος μέσω της ανάπτυξης ενός συνόλου μεθοδολογιών σχεδίασης που επιτρέπουν αποδοτική εξερεύνηση και σύνθεση αρχιτεκτονικών λύσεων υλικού και λογισμικού. Πιο συγκεκριμένα οι προτεινόμενες μεθοδολογίες αφορούν (i) την ανάπτυξη εξειδικευμένων λύσεων λογισμικού για δυναμική διαχείριση μνήμης πολύ-νηματικών εφαρμογών και (ii) τη σχεδίαση αποδοτικών λύσεων υλικού τόσο για επαναδιατάξιμες όσο και εξειδικευμένες αρχιτεκτονικές συνεπεξεργαστή. Σε ότι αφορά στις μεθοδολογίες αυτοματοποιημένης εξερεύνησης παρουσιάζεται η μοντελοποίηση και η ανάλυση σε βασικές συνιστώσες του χώρου σχεδίασης των δυναμικών διαχειριστών μνήμης για πολύ-νηματικές εφαρμογές. Προτείνονται νέοι αλγόριθμοι εξερεύνησης και διάσχισης του παραπάνω χώρου σχεδίασης βάσει μεθόδων ορθογώνιου διαχωρισμού των αποφάσεων που επιτρέπουν την πολύ-κριτηριακή εξειδίκευση και την αυτοματοποιημένη παραγωγή λογισμικού των δυναμικών διαχειριστών μνήμης. Επιπλέον προτείνεται μια νέα θεώρηση για την παραμετρική μοντελοποίηση του χώρου σχεδίασης εξειδικευμένων συνεπεξεργαστών υλικού η οποία λαμβάνει υπόψη τις επιδράσεις των σχεδιαστικών αποφάσεων από τα επίπεδα αφαίρεσης συμπεριφοράς αλγορίθμου και αρχιτεκτονικής με στόχο τη συνδυασμένη βελτιστοποίηση της επίδοσης και της επιφάνειας υλικού. Νέοι αλγόριθμοι εξερεύνησης αναπτύχθηκαν ώστε να επιτυγχάνεται γρήγορη αναζήτηση με αποδοτική σύγκλιση στις καθολικά βέλτιστες σχεδιαστικές λύσεις. Σε ότι αφορά στις μεθοδολογίες αρχιτεκτονικής σύνθεσης επαναδιατάξιμων συνεπεξεργαστών υλικού παρουσιάζεται η τεχνική Εισαγωγή Ευελιξίας για κυκλωματική σχεδίαση επαναδιατάξιμων αρχιτεκτονικών αδρομερούς υφής. Η προτεινόμενη τεχνική εκμεταλλεύεται την κατοπτρική συμμετρία στις διασυνδέσεις εξειδικευμένων (μη-επαναδιατάξιμων) αριθμητικών κυκλωμάτων και μέσω κατάλληλων μετασχηματισμών επιτυγχάνει τη σχεδίαση ενός νέου επαναδιατάξιμου μικρο-αρχιτεκτονικού πρότυπου το οποίο συνδυάζει τον οριζόντιο και κάθετο παραλληλισμό με δυνατότητες υπολογιστικής αλυσίδωσης λειτουργιών. Επιπροσθέτως, προτείνεται και μια δεύτερη επαναδιατάξιμη αρχιτεκτονική συνεπεξεργαστή, η οποία βασίζεται στη χρήση μεθόδων αριθμητικής βελτιστοποίησης για σχεδίαση ευέλικτων συνεπεξεργαστών με αλυσίδωση λειτουργιών. Για κάθε επαναδιατάξιμο συνεπεξεργαστή αναπτύχθηκαν νέοι αλγόριθμοι σχεδίασης για αυτοματοποιημένη απεικόνιση εφαρμογών στις προτεινόμενες αρχιτεκτονικές. Η μελέτη της αποδοτικότητας των προτεινόμενων μεθοδολογιών πραγματοποιήθηκε μέσω εκτενών πειραματικών αξιολογήσεων και συγκρίσεων με τις αντίστοιχες σχεδιαστικές λύσεις αιχμής. Σε κάθε περίπτωση, διαπιστώνεται πως η υιοθέτηση των μεθοδολογιών που αναπτύχθηκαν στην παρούσα διατριβή, οδηγεί σε σημαντική μετατόπιση των σχεδιαστικών λύσεων προς πιο αποδοτικές υλοποιήσεις

    Thermal-Aware Datapath Merging for Coarse-Grained Reconfigurable Processors

    No full text
    The increased power densities of deep submicron process technologies have made on-chip temperature to become a critical design issue for high-performance integrated circuits. In this paper, we address the datapath merging problem faced during the design of coarse-grained reconfigurable processors from a thermal-aware perspective. Assuming a reconfigurable processor able to execute a sequence of datapath configurations, we formulate and efficiently solve the thermal-aware datapath merging problem as a minimum cost network flow. In addition, we integrate floorplan awareness of the underlying reconfigurable processor guiding the merging decision to account also for the effects of heat diffusion. Extensive experimentation regarding different configuration scenarios, technology nodes and clock frequencies showed that the adoption of the proposed thermal-aware methodology delivers up to 8.27K peak temperature reductions and achieves better temperature flattening in comparison to a low power but thermal-unaware approach

    Design space exploration and synthesis methodologies for coarse-grained reconfigurable coprocessors

    No full text
    275 σ.Οι τεχνολογικες εξελιξεις στον τομεα της μικρο-ηλεκτρονικης επιτρεπουν σημερα την αναπτυξη πολυπλοκων ενσωματωμενων υπολογιστικων συσκευων π.χ. κινητα τηλεφωνα, ψηφιακες καμερες, που κυριαρχουν τη συγχρονη καθημερινοτητα. οι σχεδιαστες καλουνται να αντιμετωπισουν την αυξημενη πολυπλοκοτητα, παρεχοντας σχεδιαστικες λυσεις που ικανοποιουν ενα αντικρουομενο συνολο αυστηρων λειτουργικων και οικονομικων περιορισμων. σημερα, ειναι γενικα αποδεκτο οτι χωρις τη χρηση αυτοματοποιημενων εργαλειων που βελτιστοποιουν αισθητα τις συνιστωσες υλικου και λογισμικου του συστηματος, οι σχεδιαστες οδηγουνται στην υιοθετηση υπο-βελτιστων σχεδιαστικων λυσεων. η παρουσα διατριβη στοχευει στην αντιμετωπιση του παραπανω προβληματος μεσω της αναπτυξης ενος συνολου μεθοδολογιων σχεδιασης που επιτρεπουν αποδοτικη εξερευνηση και συνθεση αρχιτεκτονικων λυσεων υλικου και λογισμικου. πιο συγκεκριμενα, οι προτεινομενες μεθοδολογιες αφορουν (i) την αναπτυξη εξειδικευμενων λυσεων λογισμικου για δυναμικη διαχειριση μνημης πολυ-νηματικων εφαρμογων και (ii) τη σχεδιαση αποδοτικων λυσεων υλικου τοσο για επαναδιαταξιμες οσο και εξειδικευμενες αρχιτεκτονικες συνεπεξεργαστη. σε οτι αφορα στις μεθοδολογιες αυτοματοποιημενη εξερευνησης, παρουσιαζεται η μοντελοποιηση και η αναλυση σε βασικες συνιστωσες του χωρου σχεδιασης των δυναμικων διαχειριστων μνημης για πολυ-νηματικες εφαρμογες. προτεινονται νεοι αλγοριθμοι εξερευνησης και διασχισης του παραπανω χωρου σχεδιασης βασει μεθοδων ορθογωνιου διαχωρισμου των αποφασεων, που επιτρεπουν την πολυ-κριτηριακη εξειδικευση και την αυτοματοποιημενη παραγωγη λογισμικου των δυναμικων διαχειριστων μνημης. επιπλεον, προτεινεται μια νεα θεωρηση για την παραμετρικη μοντελοποιηση του χωρου σχεδιασης εξειδικευμενων συνεπεξεργαστων υλικου, η οποια λαμβανει υποψη τις επιδρασεις των σχεδιαστικων αποφασεων απο τα επιπεδα αφαιρεσης συμπεριφορας-αλγοριθμου και αρχιτεκτονικης, με στοχο τη συνδυασμενη βελτιστοποιηση της επιδοσης και της επιφανειας υλικου. νεοι αλγοριθμοι εξερευνησης αναπτυχθηκαν, ωστε να επιτυγχανεται γρηγορη αναζητηση με αποδοτικη συγκλιση στις καθολικα βελτιστες σχεδιαστικες λυσεις. σε οτι αφορα στις μεθοδολογιες αρχιτεκτονικης συνθεσης επαναδιαταξιμων συνεπεξεργαστων υλικου, παρουσιαζεται η τεχνικη εισαγωγη ευελιξιας για κυκλωματικη σχεδιαση επαναδιαταξιμων αρχιτεκτονικων αδρομερους υφης. η προτεινομενη τεχνικη εκμεταλλευεται την κατοπτρικη συμμετρια στις διασυνδεσεις εξειδικευμενων (μη-επαναδιαταξιμων) αριθμητικων κυκλωματων και μεσω καταλληλων μετασχηματισμων, επιτυγχανει τη σχεδιαση ενος νεου επαναδιαταξιμου μικρο-αρχιτεκτονικου προτυπου, το οποιο συνδυαζει τον οριζοντιο και καθετο παραλληλισμο με δυνατοτητες υπολογιστικης αλυσιδωσης λειτουργιων. επιπροσθετως, προτεινεται και μια δευτερη επαναδιαταξιμη αρχιτεκτονικη συνεπεξεργαστη, η οποια βασιζεται στη χρηση μεθοδων αριθμητικης βελτιστοποιησης για σχεδιαση ευελικτων συνεπεξεργαστων με αλυσιδωση λειτουργιων. για καθε επαναδιαταξιμο συνεπεξεργαστη αναπτυχθηκαν νεοι αλγοριθμοι σχεδιασης για αυτοματοποιημενη απεικονιση εφαρμογων στις προτεινομενες αρχιτεκτονικες. η μελετη της αποδοτικοτητας των προτεινομενων μεθοδολογιων πραγματοποιηθηκε μεσω εκτενων πειραματικων αξιολογησεων και συγκρισεων με τις αντιστοιχες σχεδιαστικες λυσεις αιχμης. σε καθε περιπτωση, διαπιστωνεται πως η υιοθετηση των μεθοδολογιων που αναπτυχθηκαν στην παρουσα διατριβη, οδηγει σε σημαντικη μετατοπιση των σχεδιαστικων λυσεων προς πιο αποδοτικες υλοποιησεις.τechnological advances in micro-electronics, enabled the development of complex embedded computing devices, i.e. mobile phones, digital cameras, etc., which dominate the modern everyday life. such type of systems usually executes a large but specific set of applications, which combine highly dynamic behaviour together with high demands in computing power. the designers have to deal with the increased system complexity, in order to provide design solutions that satisfy a set of stringent functional and financial constraints. today, it is broadly accepted that without the use of automated tools to optimize the hardware and software system's coefficients, designers are led to the adoption of sub-optimal design solutions. this thesis addresses the above problem by developing a set of methodologies for efficient design space exploration and architectural synthesis for digital signal processing coprocessors. specifically, the proposed techniques target to (i) the development of customized software solutions for dynamic memory management of multi-threaded applications and (ii) the design of efficient customized and reconfigurable coprocessor architectures. regarding to the automated design space exploration methodologies, we model and analyze the basic building blocks of multi-threaded dynamic memory management for multi-core platforms with shared memory. we propose new algorithms for exploring and traversing the defined parameter space based on constrained orthogonal design space partitioning, which enables multi-objective optimization and automated code generation of application specific dynamic memory management. in addition, we propose a new approach for defining an extended design space for hardware coprocessor synthesis, which takes into account the combined impact of behavioral-algorithmic and architectural level parameters. new exploration algorithms are developed to enable fast and efficient exploration that converges to more globally optimal design solutions. regarding to the architectural synthesis of reconfigurable coprocessors, we introduce the flexibility inlining technique for designing coarse-grained reconfigurable architectures at the circuit level. the proposed technique exploits the mirror symmetry found in asic implementations of arithmetic circuits and through appropriate rtl transformations achieves the design of a new reconfigurable micro-architectural template that exploits in a combined manner the architectural optimizations of horizontal parallelism, vertical parallel and operation chaining. in addition, we present a second micro-architectural template that use advanced arithmetic optimization techniques for designing flexible coprocessor datapaths. each of the aforementioned reconfigurable architectures is complemented with new high-level synthesis algorithms in order to enable automated mapping of applications onto the introduced datapaths. we study the effectiveness of the proposed methodologies through multiple and extensive experimental evaluations of the proposed solutions in comparison with state-of-the-art design solutions. in any case, it seems that the adoption of the proposed methodologies leads to a significant shift of the design solutions towards more efficient implementations.Σωτήριος Γ. Ξύδη

    Rusty: Runtime System Predictability Leveraging LSTM Neural Networks

    No full text

    Rusty: Runtime Interference-Aware Predictive Monitoring for Modern Multi-Tenant Systems

    No full text

    Voltage island management in near threshold manycore architectures to mitigate dark silicon

    No full text
    The power-wall problem driven by the stagnation of supply voltages in deep-submicron technology nodes, is now the major scaling barrier for moving towards the manycore era. Although the technology scaling enables extreme volumes of computational power, power budget violations will permit only a limited portion to be actually exploited, leading to the so called dark silicon. Near-Threshold voltage Computing (NTC) has emerged as a promising approach to overcome the manycore power-wall, at the expenses of reduced performance values and higher sensitivity to process variations. Given that several application domains operate over specific performance constraints, the performance sustainability is considered a major issue for the wide adoption of NTC. Thus, in this paper, we investigate how performance guarantees can be ensured when moving towards NTC manycores through variability-aware voltage and frequency allocation schemes. We propose three aggressive NTC voltage tuning and allocation strategies, showing that STC performance can be efficiently sustained or even optimized at the NTC regime. Finally, we show that NTC highly depends on the underlying workload characteristics, delivering average power gains of 65% for thread-parallel workloads and up to 90% for process-parallel workloads, while offering an extensive analysis on the effects of different voltage tuning/allocation strategies and voltage regulator configurations

    Variation-aware voltage island formation for power efficient near-threshold manycore architectures

    No full text
    The power-wall problem and its dual utilization- wall problem are considered among the main barriers to feasi- ble/efficient scaling in the manycore era. Several researchers have proposed the usage of aggressive voltage scaling techniques at the near-threshold voltage region, promising significant improve- ments in power efficiency at the expense of reduced performance values and higher sensitivity to process parametric variations. In this paper, we introduce a variability-aware framework for exploring the potential power-efficiency of the Near Threshold Computing (NTC) under performance constraints. We propose and analyze the usage of fine-grained voltage islands to cope with the increased effect of variability problem in the NTC region. For the considered workloads, we found that the power impact of fine-grained voltage islands formation can be up to 35% for a 128-core chip operating at NTC region, while the adoption of a variability aware technique can bring to a power reduction of up to 43% with respect to a variability unaware technique. Finally, we show that voltage regulator’s complexity, in terms of voltage quantization levels, has a very low effect on the power efficiency at NTC, making in that way the usage of voltage islands a feasible solution for copying with variability

    A Meta-Model Assisted Coprocessor Synthesis Framework for Compiler/Architecture Parameters Customization

    No full text
    Hardware coprocessors are extensively used in modern heterogeneous systems-on-chip (SoC) designs to provide efficient implementation of application-specific functions. Customized coprocessor synthesis exploits design space exploration to derive Pareto optimal design configurations for a set of targeted metrics. Existing exploration strategies for coprocessor synthesis have been focused on either time consuming iterative scheduling approaches or ad-hoc sampling of the solution space guided by the designer's experience. In this paper, we introduce a meta-model assisted exploration framework that eliminates the aforementioned drawbacks by using response surface models (RSMs) for generating customized coprocessor architectures. The methodology is based on the construction of analytical delay and area models for predicting the quality of the design points without resorting to costly architectural synthesis procedures. Various RSM techniques are evaluated with respect to their accuracy and convergence. We show that the targeted solution space can be accurately modeled through RSMs, thus enabling a speedup of the overall exploration runtime without compromising the quality of results. Comparative experimental results, over a set of real-life benchmarks, prove the effectiveness of the proposed approach in terms of quality improvements of the design solutions and exploration runtime reductions. An MPEG-2 decoder case study describes how the proposed approach can be exploited for customizing the architecture of two hardware accelerated kernel
    corecore